package org.particles.domain.world;

import java.util.List;

import org.particles.domain.Particle;
import org.particles.domain.Vector;

public interface World {
	/**
	 * go to the next state of this world.
	 */
	public void nextState();
	
	/**
	 * @return all particles existing in this world.
	 */
	public List<Particle> getParticles();
	
	public void addParticle(Particle particle);
	
	public void removeParticleAt(int index);
	
	/**
	 * @return dimension (for example width, height)
	 */
	public Vector getDimension();
	
	/**
	 * sets dimension (for example width, height)
	 */
	public void setDimension(Vector dimension);
	
}
